home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / livecd.squashfs / usr / include / ewl / ewl_dialog.h < prev    next >
C/C++ Source or Header  |  2006-01-09  |  2KB  |  71 lines

  1. #ifndef __EWL_DIALOG_H__
  2. #define __EWL_DIALOG_H__
  3.  
  4. /**
  5.  * @file ewl_dialog.h
  6.  * @defgroup Ewl_Dialog Dialog: A Window to prompt the user for
  7.  * Displaying Messages, asking
  8.  * questions or warnings.
  9.  * 
  10.  * @brief Defines the Ewl_Dialog class which extends the Ewl_Window class.
  11.  *
  12.  * @{
  13.  */
  14.  
  15. /**
  16.  * @themekey /dialog/file
  17.  * @themekey /dialog/group
  18.  */
  19.  
  20. /**
  21.  * The dialog structure is a window with two area: a box (vbox) to hold
  22.  * messages and another box (action_area) to put buttons
  23.  * (usually). These boxes can be separated by a line.
  24.  */
  25. typedef struct _Ewl_Dialog Ewl_Dialog;
  26.  
  27. /**
  28.  * @def EWL_DIALOG(dialog)
  29.  * Typecasts a pointer to an Ewl_Dialog pointer.
  30.  */
  31. #define EWL_DIALOG(dialog) ((Ewl_Dialog *) dialog)
  32.  
  33. /**
  34.  * @struct _Ewl_Dialog
  35.  * Extends the Ewl_Window class. Add two boxes to hold massages (vbox)
  36.  * and buttons (action_area). The action_area could be on top, bottom,
  37.  * right or left of the window. The boxes could be separated by a line.
  38.  */
  39. struct _Ewl_Dialog
  40. {
  41.     Ewl_Window   window; /* Inherit from a window */
  42.  
  43.         Ewl_Widget  *box;         /* The box for window layout */
  44.     Ewl_Widget  *vbox;        /* The box where messages are displayed */
  45.     Ewl_Widget  *action_area; /* The box where the buttons are added */
  46.  
  47.     Ewl_Widget  *separator;   /* The separator between vbox and action_area */
  48.  
  49.     Ewl_Position position;    /* Position of the action_area */
  50.     Ewl_Position active_area; /* Which section of the dialog is active */
  51. };
  52.   
  53. Ewl_Widget  *ewl_dialog_new (void);
  54. int          ewl_dialog_init (Ewl_Dialog *dialog);
  55.  
  56. void         ewl_dialog_action_position_set(Ewl_Dialog *d, Ewl_Position pos);
  57. Ewl_Position ewl_dialog_action_position_get(Ewl_Dialog *dialog);
  58.  
  59. void         ewl_dialog_active_area_set(Ewl_Dialog *d, Ewl_Position pos);
  60. Ewl_Position ewl_dialog_active_area_get(Ewl_Dialog *d);
  61.  
  62. unsigned int ewl_dialog_has_separator_get (Ewl_Dialog *dialog);
  63. void         ewl_dialog_has_separator_set (Ewl_Dialog *dialog,
  64.                        unsigned int has_sep);
  65.  
  66. /**
  67.  * @}
  68.  */
  69.  
  70. #endif /* __EWL_DIALOG_H__ */
  71.